if (attr)
g_object_set (tag, "underline", ((PangoAttrInt*)attr)->value, NULL);
- attr = pango_attr_iterator_get (iter, PANGO_ATTR_OVERLINE);
- if (attr)
- g_object_set (tag, "overline", ((PangoAttrInt*)attr)->value, NULL);
-
attr = pango_attr_iterator_get (iter, PANGO_ATTR_UNDERLINE_COLOR);
if (attr)
{
g_object_set (tag, "underline-rgba", &rgba, NULL);
}
+#if PANGO_VERSION_CHECK(1,45,0)
+ attr = pango_attr_iterator_get (iter, PANGO_ATTR_OVERLINE);
+ if (attr)
+ g_object_set (tag, "overline", ((PangoAttrInt*)attr)->value, NULL);
+
attr = pango_attr_iterator_get (iter, PANGO_ATTR_OVERLINE_COLOR);
if (attr)
{
rgba.alpha = 1.;
g_object_set (tag, "overline-rgba", &rgba, NULL);
}
+#endif
attr = pango_attr_iterator_get (iter, PANGO_ATTR_STRIKETHROUGH);
if (attr)
pango_attr_list_insert (attrs, attr);
}
- if (appearance->overline != PANGO_OVERLINE_NONE)
+ if (appearance->underline_rgba)
{
- attr = pango_attr_overline_new (appearance->overline);
+ attr = pango_attr_underline_color_new (appearance->underline_rgba->red * 65535,
+ appearance->underline_rgba->green * 65535,
+ appearance->underline_rgba->blue * 65535);
attr->start_index = start;
attr->end_index = start + byte_count;
pango_attr_list_insert (attrs, attr);
}
- if (appearance->underline_rgba)
+#if PANGO_VERSION_CHECK(1,45,0)
+ if (appearance->overline != PANGO_OVERLINE_NONE)
{
- attr = pango_attr_underline_color_new (appearance->underline_rgba->red * 65535,
- appearance->underline_rgba->green * 65535,
- appearance->underline_rgba->blue * 65535);
+ attr = pango_attr_overline_new (appearance->overline);
attr->start_index = start;
attr->end_index = start + byte_count;
pango_attr_list_insert (attrs, attr);
}
+#endif
if (appearance->strikethrough)
{
case PANGO_ATTR_UNDERLINE:
appearance.underline = ((PangoAttrInt *)attr)->value;
break;
- case PANGO_ATTR_OVERLINE:
- appearance.overline = ((PangoAttrInt *)attr)->value;
- break;
case PANGO_ATTR_UNDERLINE_COLOR:
convert_color (&rgba, (PangoAttrColor*)attr);
if (appearance.underline_rgba)
gdk_rgba_free (appearance.underline_rgba);
appearance.underline_rgba = gdk_rgba_copy (&rgba);
break;
+#if PANGO_VERSION_CHECK(1,45,0)
+ case PANGO_ATTR_OVERLINE:
+ appearance.overline = ((PangoAttrInt *)attr)->value;
+ break;
case PANGO_ATTR_OVERLINE_COLOR:
convert_color (&rgba, (PangoAttrColor*)attr);
if (appearance.overline_rgba)
gdk_rgba_free (appearance.overline_rgba);
appearance.overline_rgba = gdk_rgba_copy (&rgba);
break;
+#endif
case PANGO_ATTR_STRIKETHROUGH:
appearance.strikethrough = ((PangoAttrInt *)attr)->value;
break;
PROP_STRIKETHROUGH_RGBA,
PROP_RIGHT_MARGIN,
PROP_UNDERLINE,
- PROP_OVERLINE,
PROP_UNDERLINE_RGBA,
+#if PANGO_VERSION_CHECK(1,45,0)
+ PROP_OVERLINE,
PROP_OVERLINE_RGBA,
+#endif
PROP_RISE,
PROP_BACKGROUND_FULL_HEIGHT,
PROP_LANGUAGE,
PROP_STRIKETHROUGH_RGBA_SET,
PROP_RIGHT_MARGIN_SET,
PROP_UNDERLINE_SET,
- PROP_OVERLINE_SET,
PROP_UNDERLINE_RGBA_SET,
+#if PANGO_VERSION_CHECK(1,45,0)
+ PROP_OVERLINE_SET,
PROP_OVERLINE_RGBA_SET,
+#endif
PROP_RISE_SET,
PROP_BACKGROUND_FULL_HEIGHT_SET,
PROP_LANGUAGE_SET,
PANGO_UNDERLINE_NONE,
GTK_PARAM_READWRITE));
- g_object_class_install_property (object_class,
- PROP_OVERLINE,
- g_param_spec_enum ("overline",
- P_("Overline"),
- P_("Style of overline for this text"),
- PANGO_TYPE_OVERLINE,
- PANGO_OVERLINE_NONE,
- GTK_PARAM_READWRITE));
-
/**
* GtkTextTag:underline-rgba:
*
GDK_TYPE_RGBA,
GTK_PARAM_READWRITE));
+#if PANGO_VERSION_CHECK(1,45,0)
+ g_object_class_install_property (object_class,
+ PROP_OVERLINE,
+ g_param_spec_enum ("overline",
+ P_("Overline"),
+ P_("Style of overline for this text"),
+ PANGO_TYPE_OVERLINE,
+ PANGO_OVERLINE_NONE,
+ GTK_PARAM_READWRITE));
+
g_object_class_install_property (object_class,
PROP_OVERLINE_RGBA,
g_param_spec_boxed ("overline-rgba",
P_("Color of overline for this text"),
GDK_TYPE_RGBA,
GTK_PARAM_READWRITE));
+#endif
/**
* GtkTextTag:strikethrough-rgba:
P_("Underline set"),
P_("Whether this tag affects underlining"));
- ADD_SET_PROP ("overline-set", PROP_OVERLINE_SET,
- P_("Overline set"),
- P_("Whether this tag affects overlining"));
-
/**
* GtkTextTag:underline-rgba-set:
*
P_("Underline RGBA set"),
P_("Whether this tag affects underlining color"));
+#if PANGO_VERSION_CHECK(1,45,0)
+ ADD_SET_PROP ("overline-set", PROP_OVERLINE_SET,
+ P_("Overline set"),
+ P_("Whether this tag affects overlining"));
+
ADD_SET_PROP ("overline-rgba-set", PROP_OVERLINE_RGBA_SET,
P_("Overline RGBA set"),
P_("Whether this tag affects overlining color"));
+#endif
/**
* GtkTextTag:strikethrough-rgba-set:
}
}
+#if PANGO_VERSION_CHECK(1,45,0)
static void
set_overline_rgba (GtkTextTag *tag,
const GdkRGBA *rgba)
}
}
}
+#endif
static void
set_strikethrough_rgba (GtkTextTag *tag,
g_object_notify (object, "underline-set");
break;
- case PROP_OVERLINE:
- priv->overline_set = TRUE;
- priv->values->appearance.overline = g_value_get_enum (value);
- g_object_notify (object, "overline-set");
- break;
-
case PROP_UNDERLINE_RGBA:
{
GdkRGBA *color = g_value_get_boxed (value);
}
break;
+#if PANGO_VERSION_CHECK(1,45,0)
+ case PROP_OVERLINE:
+ priv->overline_set = TRUE;
+ priv->values->appearance.overline = g_value_get_enum (value);
+ g_object_notify (object, "overline-set");
+ break;
+
case PROP_OVERLINE_RGBA:
{
GdkRGBA *color = g_value_get_boxed (value);
set_overline_rgba (text_tag, color);
}
break;
+#endif
case PROP_RISE:
priv->rise_set = TRUE;
priv->underline_set = g_value_get_boolean (value);
break;
- case PROP_OVERLINE_SET:
- priv->overline_set = g_value_get_boolean (value);
- break;
-
case PROP_UNDERLINE_RGBA_SET:
priv->underline_rgba_set = g_value_get_boolean (value);
break;
+#if PANGO_VERSION_CHECK(1,45,0)
+ case PROP_OVERLINE_SET:
+ priv->overline_set = g_value_get_boolean (value);
+ break;
+
case PROP_OVERLINE_RGBA_SET:
priv->overline_rgba_set = g_value_get_boolean (value);
break;
+#endif
case PROP_RISE_SET:
priv->rise_set = g_value_get_boolean (value);
g_value_set_enum (value, priv->values->appearance.underline);
break;
- case PROP_OVERLINE:
- g_value_set_enum (value, priv->values->appearance.overline);
- break;
-
case PROP_UNDERLINE_RGBA:
if (priv->underline_rgba_set)
g_value_set_boxed (value, priv->values->appearance.underline_rgba);
break;
+#if PANGO_VERSION_CHECK(1,45,0)
+ case PROP_OVERLINE:
+ g_value_set_enum (value, priv->values->appearance.overline);
+ break;
+
case PROP_OVERLINE_RGBA:
if (priv->overline_rgba_set)
g_value_set_boxed (value, priv->values->appearance.overline_rgba);
break;
+#endif
case PROP_RISE:
g_value_set_int (value, priv->values->appearance.rise);
g_value_set_boolean (value, priv->underline_set);
break;
- case PROP_OVERLINE_SET:
- g_value_set_boolean (value, priv->overline_set);
- break;
-
case PROP_UNDERLINE_RGBA_SET:
g_value_set_boolean (value, priv->underline_rgba_set);
break;
+#if PANGO_VERSION_CHECK(1,45,0)
+ case PROP_OVERLINE_SET:
+ g_value_set_boolean (value, priv->overline_set);
+ break;
+
case PROP_OVERLINE_RGBA_SET:
g_value_set_boolean (value, priv->overline_rgba_set);
break;
+#endif
case PROP_RISE_SET:
g_value_set_boolean (value, priv->rise_set);